2
실습 3: AI가 오목을 둡니다 (연결 5)
PolyU COMP55112026-01-26

Python 기초: 게임 보드

AI를 만들기 전에, 세상을 디지털로 표현해야 합니다. 오목에서 우리의 세상은 15x15 또는 19x19 격자입니다. Python에서 격자를 표현하는 표준적인 방법은 리스트의 리스트입니다.

개념: 메모리 속의 스프레드시트

바깥쪽 리스트를 모든 행을 담고 있는 "스프레드시트"라고 생각해 보세요. 그 안의 각 요소는 해당 행의 열을 나타내는 또 다른 리스트입니다.

데이터 접근

  • board[0] 는 맨 위 행 전체(리스트)를 반환합니다.
  • board[1][2] 는 다음 위치에 접근합니다 1행, 2열입니다.

⚠️ 흔한 좌표 오류

수학에서는 $x$가 수평, $y$가 수직인 $(x, y)$로 표현합니다. Python 행렬에서는 다음과 같이 접근합니다. board[row][col]입니다.

"행"은 수직 위치($y$), "열"은 수평 위치($x$)에 해당하므로, 코드는 사실상 다음과 같습니다. board[y][x] 이를 혼동하면 AI가 보드를 옆으로 바라보게 될 것입니다!